# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=java-snappy
_pkgname=snappy-java
pkgver=1.1.7.3
_libver=${pkgver%.*}
pkgrel=0
pkgdesc="Snappy compressor/decompressor for Java"
url="https://github.com/xerial/snappy-java"
arch="all !mips !mips64"
license="Apache-2.0"
options="!check" # Tests does not work correctly
depends="openjdk8-jre-base"
makedepends="bash openjdk8 perl snappy-dev>=$_libver"
subpackages="$pkgname-native"
source="$pkgname-$pkgver.tar.gz::https://github.com/xerial/$_pkgname/archive/$pkgver.tar.gz
	unbundle-snappy.patch
	"
builddir="$srcdir/$_pkgname-$pkgver"

prepare() {
	default_prepare

	cd "$builddir"

	# Get rid of bundled native binaries.
	rm -r src/main/resources/org/xerial/snappy/native

	# To load libsnappyjava.so from java.library.path.
	cat > src/main/resources/org-xerial-snappy.properties <<-EOF
		org.xerial.snappy.use.systemlib=true
	EOF
}

build() {
	cd "$builddir"

	JAVA_HOME="/usr/lib/jvm/default-jvm" make

	msg "Downloading SBT and then building JAR (this will take few minutes)..."
	JVM_OPTS="-Xms256m -Xmx256m -Xss2m" \
		./sbt -no-share -sbt-launch-dir project/.sbt/launchers package
}

package() {
	depends="$depends $pkgname-native"

	install -m644 -D "$builddir"/target/$_pkgname-*.jar \
		"$pkgdir"/usr/share/java/$_pkgname-$pkgver.jar
	ln -sf $_pkgname-$pkgver.jar "$pkgdir"/usr/share/java/$_pkgname.jar
}

native() {
	local soname="libsnappyjava.so"

	install -m755 -D "$builddir"/target/$soname \
		"$subpkgdir"/usr/lib/$soname.$_libver
	ln -sf $soname.$_libver "$subpkgdir"/usr/lib/$soname
}

sha512sums="ece8d388c62e3c405eba2c9458c6c3d5996c6570189825b02108f87f4c05723161bb6db0ca91dbd509e58fd1830f31c4546a4c211d31fa0efd5b46065e1156a8  java-snappy-1.1.7.3.tar.gz
3533a62aefa0f2b9943fa7a360c38c468eb6917fc709ad8ae3de597e91ae8ebe935697a24a7fdbba6ecebe2e416806e35db66cce42570c62f2c880c59c0c6e62  unbundle-snappy.patch"
